home *** CD-ROM | disk | FTP | other *** search
/ Clickx 115 / Clickx 115.iso / software / tools / windows / tails-i386-0.16.iso / live / filesystem.squashfs / usr / share / misc / config.sub < prev    next >
Encoding:
Text File  |  2010-03-06  |  33.8 KB  |  1,715 lines

  1. #! /bin/sh
  2. # Configuration validation subroutine script.
  3. #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
  4. #   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
  5. #   Free Software Foundation, Inc.
  6.  
  7. timestamp='2010-01-22'
  8.  
  9. # This file is (in principle) common to ALL GNU software.
  10. # The presence of a machine in this file suggests that SOME GNU software
  11. # can handle that machine.  It does not imply ALL GNU software can.
  12. #
  13. # This file is free software; you can redistribute it and/or modify
  14. # it under the terms of the GNU General Public License as published by
  15. # the Free Software Foundation; either version 2 of the License, or
  16. # (at your option) any later version.
  17. #
  18. # This program is distributed in the hope that it will be useful,
  19. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  20. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  21. # GNU General Public License for more details.
  22. #
  23. # You should have received a copy of the GNU General Public License
  24. # along with this program; if not, write to the Free Software
  25. # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
  26. # 02110-1301, USA.
  27. #
  28. # As a special exception to the GNU General Public License, if you
  29. # distribute this file as part of a program that contains a
  30. # configuration script generated by Autoconf, you may include it under
  31. # the same distribution terms that you use for the rest of that program.
  32.  
  33.  
  34. # Please send patches to <config-patches@gnu.org>.  Submit a context
  35. # diff and a properly formatted GNU ChangeLog entry.
  36. #
  37. # Configuration subroutine to validate and canonicalize a configuration type.
  38. # Supply the specified configuration type as an argument.
  39. # If it is invalid, we print an error message on stderr and exit with code 1.
  40. # Otherwise, we print the canonical config type on stdout and succeed.
  41.  
  42. # You can get the latest version of this script from:
  43. # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
  44.  
  45. # This file is supposed to be the same for all GNU packages
  46. # and recognize all the CPU types, system types and aliases
  47. # that are meaningful with *any* GNU software.
  48. # Each package is responsible for reporting which valid configurations
  49. # it does not support.  The user should be able to distinguish
  50. # a failure to support a valid configuration from a meaningless
  51. # configuration.
  52.  
  53. # The goal of this file is to map all the various variations of a given
  54. # machine specification into a single specification in the form:
  55. #    CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
  56. # or in some cases, the newer four-part form:
  57. #    CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
  58. # It is wrong to echo any other type of specification.
  59.  
  60. me=`echo "$0" | sed -e 's,.*/,,'`
  61.  
  62. usage="\
  63. Usage: $0 [OPTION] CPU-MFR-OPSYS
  64.        $0 [OPTION] ALIAS
  65.  
  66. Canonicalize a configuration name.
  67.  
  68. Operation modes:
  69.   -h, --help         print this help, then exit
  70.   -t, --time-stamp   print date of last modification, then exit
  71.   -v, --version      print version number, then exit
  72.  
  73. Report bugs and patches to <config-patches@gnu.org>."
  74.  
  75. version="\
  76. GNU config.sub ($timestamp)
  77.  
  78. Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
  79. 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free
  80. Software Foundation, Inc.
  81.  
  82. This is free software; see the source for copying conditions.  There is NO
  83. warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
  84.  
  85. help="
  86. Try \`$me --help' for more information."
  87.  
  88. # Parse command line
  89. while test $# -gt 0 ; do
  90.   case $1 in
  91.     --time-stamp | --time* | -t )
  92.        echo "$timestamp" ; exit ;;
  93.     --version | -v )
  94.        echo "$version" ; exit ;;
  95.     --help | --h* | -h )
  96.        echo "$usage"; exit ;;
  97.     -- )     # Stop option processing
  98.        shift; break ;;
  99.     - )    # Use stdin as input.
  100.        break ;;
  101.     -* )
  102.        echo "$me: invalid option $1$help"
  103.        exit 1 ;;
  104.  
  105.     *local*)
  106.        # First pass through any local machine types.
  107.        echo $1
  108.        exit ;;
  109.  
  110.     * )
  111.        break ;;
  112.   esac
  113. done
  114.  
  115. case $# in
  116.  0) echo "$me: missing argument$help" >&2
  117.     exit 1;;
  118.  1) ;;
  119.  *) echo "$me: too many arguments$help" >&2
  120.     exit 1;;
  121. esac
  122.  
  123. # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
  124. # Here we must recognize all the valid KERNEL-OS combinations.
  125. maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
  126. case $maybe_os in
  127.   nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
  128.   uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
  129.   kopensolaris*-gnu* | \
  130.   storm-chaos* | os2-emx* | rtmk-nova*)
  131.     os=-$maybe_os
  132.     basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
  133.     ;;
  134.   *)
  135.     basic_machine=`echo $1 | sed 's/-[^-]*$//'`
  136.     if [ $basic_machine != $1 ]
  137.     then os=`echo $1 | sed 's/.*-/-/'`
  138.     else os=; fi
  139.     ;;
  140. esac
  141.  
  142. ### Let's recognize common machines as not being operating systems so
  143. ### that things like config.sub decstation-3100 work.  We also
  144. ### recognize some manufacturers as not being operating systems, so we
  145. ### can provide default operating systems below.
  146. case $os in
  147.     -sun*os*)
  148.         # Prevent following clause from handling this invalid input.
  149.         ;;
  150.     -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
  151.     -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
  152.     -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
  153.     -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
  154.     -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
  155.     -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
  156.     -apple | -axis | -knuth | -cray | -microblaze)
  157.         os=
  158.         basic_machine=$1
  159.         ;;
  160.         -bluegene*)
  161.             os=-cnk
  162.         ;;
  163.     -sim | -cisco | -oki | -wec | -winbond)
  164.         os=
  165.         basic_machine=$1
  166.         ;;
  167.     -scout)
  168.         ;;
  169.     -wrs)
  170.         os=-vxworks
  171.         basic_machine=$1
  172.         ;;
  173.     -chorusos*)
  174.         os=-chorusos
  175.         basic_machine=$1
  176.         ;;
  177.      -chorusrdb)
  178.          os=-chorusrdb
  179.         basic_machine=$1
  180.          ;;
  181.     -hiux*)
  182.         os=-hiuxwe2
  183.         ;;
  184.     -sco6)
  185.         os=-sco5v6
  186.         basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  187.         ;;
  188.     -sco5)
  189.         os=-sco3.2v5
  190.         basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  191.         ;;
  192.     -sco4)
  193.         os=-sco3.2v4
  194.         basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  195.         ;;
  196.     -sco3.2.[4-9]*)
  197.         os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
  198.         basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  199.         ;;
  200.     -sco3.2v[4-9]*)
  201.         # Don't forget version if it is 3.2v4 or newer.
  202.         basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  203.         ;;
  204.     -sco5v6*)
  205.         # Don't forget version if it is 3.2v4 or newer.
  206.         basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  207.         ;;
  208.     -sco*)
  209.         os=-sco3.2v2
  210.         basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  211.         ;;
  212.     -udk*)
  213.         basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  214.         ;;
  215.     -isc)
  216.         os=-isc2.2
  217.         basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  218.         ;;
  219.     -clix*)
  220.         basic_machine=clipper-intergraph
  221.         ;;
  222.     -isc*)
  223.         basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
  224.         ;;
  225.     -lynx*)
  226.         os=-lynxos
  227.         ;;
  228.     -ptx*)
  229.         basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
  230.         ;;
  231.     -windowsnt*)
  232.         os=`echo $os | sed -e 's/windowsnt/winnt/'`
  233.         ;;
  234.     -psos*)
  235.         os=-psos
  236.         ;;
  237.     -mint | -mint[0-9]*)
  238.         basic_machine=m68k-atari
  239.         os=-mint
  240.         ;;
  241. esac
  242.  
  243. # Decode aliases for certain CPU-COMPANY combinations.
  244. case $basic_machine in
  245.     # Recognize the basic CPU types without company name.
  246.     # Some are omitted here because they have special meanings below.
  247.     1750a | 580 \
  248.     | a29k \
  249.     | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
  250.     | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
  251.     | am33_2.0 \
  252.     | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
  253.     | bfin \
  254.     | c4x | clipper \
  255.     | d10v | d30v | dlx | dsp16xx \
  256.     | fido | fr30 | frv \
  257.     | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
  258.     | i370 | i860 | i960 | ia64 \
  259.     | ip2k | iq2000 \
  260.     | lm32 \
  261.     | m32c | m32r | m32rle | m68000 | m68k | m88k \
  262.     | maxq | mb | microblaze | mcore | mep | metag \
  263.     | mips | mipsbe | mipseb | mipsel | mipsle \
  264.     | mips16 \
  265.     | mips64 | mips64el \
  266.     | mips64octeon | mips64octeonel \
  267.     | mips64orion | mips64orionel \
  268.     | mips64r5900 | mips64r5900el \
  269.     | mips64vr | mips64vrel \
  270.     | mips64vr4100 | mips64vr4100el \
  271.     | mips64vr4300 | mips64vr4300el \
  272.     | mips64vr5000 | mips64vr5000el \
  273.     | mips64vr5900 | mips64vr5900el \
  274.     | mipsisa32 | mipsisa32el \
  275.     | mipsisa32r2 | mipsisa32r2el \
  276.     | mipsisa64 | mipsisa64el \
  277.     | mipsisa64r2 | mipsisa64r2el \
  278.     | mipsisa64sb1 | mipsisa64sb1el \
  279.     | mipsisa64sr71k | mipsisa64sr71kel \
  280.     | mipstx39 | mipstx39el \
  281.     | mn10200 | mn10300 \
  282.     | moxie \
  283.     | mt \
  284.     | msp430 \
  285.     | nios | nios2 \
  286.     | ns16k | ns32k \
  287.     | or32 \
  288.     | pdp10 | pdp11 | pj | pjl \
  289.     | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
  290.     | pyramid \
  291.     | rx \
  292.     | score \
  293.     | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
  294.     | sh64 | sh64le \
  295.     | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
  296.     | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
  297.     | spu | strongarm \
  298.     | tahoe | thumb | tic4x | tic80 | tron \
  299.     | ubicom32 \
  300.     | v850 | v850e \
  301.     | we32k \
  302.     | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
  303.     | z8k | z80)
  304.         basic_machine=$basic_machine-unknown
  305.         ;;
  306.     m6811 | m68hc11 | m6812 | m68hc12 | picochip)
  307.         # Motorola 68HC11/12.
  308.         basic_machine=$basic_machine-unknown
  309.         os=-none
  310.         ;;
  311.     m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
  312.         ;;
  313.     ms1)
  314.         basic_machine=mt-unknown
  315.         ;;
  316.  
  317.     # We use `pc' rather than `unknown'
  318.     # because (1) that's what they normally are, and
  319.     # (2) the word "unknown" tends to confuse beginning users.
  320.     i*86 | x86_64)
  321.       basic_machine=$basic_machine-pc
  322.       ;;
  323.     # Object if more than one company name word.
  324.     *-*-*)
  325.         echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
  326.         exit 1
  327.         ;;
  328.     # Recognize the basic CPU types with company name.
  329.     580-* \
  330.     | a29k-* \
  331.     | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
  332.     | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
  333.     | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
  334.     | arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
  335.     | avr-* | avr32-* \
  336.     | bfin-* | bs2000-* \
  337.     | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
  338.     | clipper-* | craynv-* | cydra-* \
  339.     | d10v-* | d30v-* | dlx-* \
  340.     | elxsi-* \
  341.     | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
  342.     | h8300-* | h8500-* \
  343.     | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
  344.     | i*86-* | i860-* | i960-* | ia64-* \
  345.     | ip2k-* | iq2000-* \
  346.     | lm32-* \
  347.     | m32c-* | m32r-* | m32rle-* \
  348.     | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
  349.     | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
  350.     | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
  351.     | mips16-* \
  352.     | mips64-* | mips64el-* \
  353.     | mips64octeon-* | mips64octeonel-* \
  354.     | mips64orion-* | mips64orionel-* \
  355.     | mips64r5900-* | mips64r5900el-* \
  356.     | mips64vr-* | mips64vrel-* \
  357.     | mips64vr4100-* | mips64vr4100el-* \
  358.     | mips64vr4300-* | mips64vr4300el-* \
  359.     | mips64vr5000-* | mips64vr5000el-* \
  360.     | mips64vr5900-* | mips64vr5900el-* \
  361.     | mipsisa32-* | mipsisa32el-* \
  362.     | mipsisa32r2-* | mipsisa32r2el-* \
  363.     | mipsisa64-* | mipsisa64el-* \
  364.     | mipsisa64r2-* | mipsisa64r2el-* \
  365.     | mipsisa64sb1-* | mipsisa64sb1el-* \
  366.     | mipsisa64sr71k-* | mipsisa64sr71kel-* \
  367.     | mipstx39-* | mipstx39el-* \
  368.     | mmix-* \
  369.     | mt-* \
  370.     | msp430-* \
  371.     | nios-* | nios2-* \
  372.     | none-* | np1-* | ns16k-* | ns32k-* \
  373.     | orion-* \
  374.     | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
  375.     | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
  376.     | pyramid-* \
  377.     | romp-* | rs6000-* | rx-* \
  378.     | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
  379.     | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
  380.     | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
  381.     | sparclite-* \
  382.     | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
  383.     | tahoe-* | thumb-* \
  384.     | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
  385.     | tile-* | tilegx-* \
  386.     | tron-* \
  387.     | ubicom32-* \
  388.     | v850-* | v850e-* | vax-* \
  389.     | we32k-* \
  390.     | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
  391.     | xstormy16-* | xtensa*-* \
  392.     | ymp-* \
  393.     | z8k-* | z80-*)
  394.         ;;
  395.     # Recognize the basic CPU types without company name, with glob match.
  396.     xtensa*)
  397.         basic_machine=$basic_machine-unknown
  398.         ;;
  399.     # Recognize the various machine names and aliases which stand
  400.     # for a CPU type and a company and sometimes even an OS.
  401.     386bsd)
  402.         basic_machine=i386-unknown
  403.         os=-bsd
  404.         ;;
  405.     3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
  406.         basic_machine=m68000-att
  407.         ;;
  408.     3b*)
  409.         basic_machine=we32k-att
  410.         ;;
  411.     a29khif)
  412.         basic_machine=a29k-amd
  413.         os=-udi
  414.         ;;
  415.         abacus)
  416.         basic_machine=abacus-unknown
  417.         ;;
  418.     adobe68k)
  419.         basic_machine=m68010-adobe
  420.         os=-scout
  421.         ;;
  422.     alliant | fx80)
  423.         basic_machine=fx80-alliant
  424.         ;;
  425.     altos | altos3068)
  426.         basic_machine=m68k-altos
  427.         ;;
  428.     am29k)
  429.         basic_machine=a29k-none
  430.         os=-bsd
  431.         ;;
  432.     amd64)
  433.         basic_machine=x86_64-pc
  434.         ;;
  435.     amd64-*)
  436.         basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
  437.         ;;
  438.     amdahl)
  439.         basic_machine=580-amdahl
  440.         os=-sysv
  441.         ;;
  442.     amiga | amiga-*)
  443.         basic_machine=m68k-unknown
  444.         ;;
  445.     amigaos | amigados)
  446.         basic_machine=m68k-unknown
  447.         os=-amigaos
  448.         ;;
  449.     amigaunix | amix)
  450.         basic_machine=m68k-unknown
  451.         os=-sysv4
  452.         ;;
  453.     apollo68)
  454.         basic_machine=m68k-apollo
  455.         os=-sysv
  456.         ;;
  457.     apollo68bsd)
  458.         basic_machine=m68k-apollo
  459.         os=-bsd
  460.         ;;
  461.     aros)
  462.         basic_machine=i386-pc
  463.         os=-aros
  464.         ;;
  465.     aux)
  466.         basic_machine=m68k-apple
  467.         os=-aux
  468.         ;;
  469.     balance)
  470.         basic_machine=ns32k-sequent
  471.         os=-dynix
  472.         ;;
  473.     blackfin)
  474.         basic_machine=bfin-unknown
  475.         os=-linux
  476.         ;;
  477.     blackfin-*)
  478.         basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
  479.         os=-linux
  480.         ;;
  481.     bluegene*)
  482.         basic_machine=powerpc-ibm
  483.         os=-cnk
  484.         ;;
  485.     c90)
  486.         basic_machine=c90-cray
  487.         os=-unicos
  488.         ;;
  489.         cegcc)
  490.         basic_machine=arm-unknown
  491.         os=-cegcc
  492.         ;;
  493.     convex-c1)
  494.         basic_machine=c1-convex
  495.         os=-bsd
  496.         ;;
  497.     convex-c2)
  498.         basic_machine=c2-convex
  499.         os=-bsd
  500.         ;;
  501.     convex-c32)
  502.         basic_machine=c32-convex
  503.         os=-bsd
  504.         ;;
  505.     convex-c34)
  506.         basic_machine=c34-convex
  507.         os=-bsd
  508.         ;;
  509.     convex-c38)
  510.         basic_machine=c38-convex
  511.         os=-bsd
  512.         ;;
  513.     cray | j90)
  514.         basic_machine=j90-cray
  515.         os=-unicos
  516.         ;;
  517.     craynv)
  518.         basic_machine=craynv-cray
  519.         os=-unicosmp
  520.         ;;
  521.     cr16)
  522.         basic_machine=cr16-unknown
  523.         os=-elf
  524.         ;;
  525.     crds | unos)
  526.         basic_machine=m68k-crds
  527.         ;;
  528.     crisv32 | crisv32-* | etraxfs*)
  529.         basic_machine=crisv32-axis
  530.         ;;
  531.     cris | cris-* | etrax*)
  532.         basic_machine=cris-axis
  533.         ;;
  534.     crx)
  535.         basic_machine=crx-unknown
  536.         os=-elf
  537.         ;;
  538.     da30 | da30-*)
  539.         basic_machine=m68k-da30
  540.         ;;
  541.     decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
  542.         basic_machine=mips-dec
  543.         ;;
  544.     decsystem10* | dec10*)
  545.         basic_machine=pdp10-dec
  546.         os=-tops10
  547.         ;;
  548.     decsystem20* | dec20*)
  549.         basic_machine=pdp10-dec
  550.         os=-tops20
  551.         ;;
  552.     delta | 3300 | motorola-3300 | motorola-delta \
  553.           | 3300-motorola | delta-motorola)
  554.         basic_machine=m68k-motorola
  555.         ;;
  556.     delta88)
  557.         basic_machine=m88k-motorola
  558.         os=-sysv3
  559.         ;;
  560.     dicos)
  561.         basic_machine=i686-pc
  562.         os=-dicos
  563.         ;;
  564.     djgpp)
  565.         basic_machine=i586-pc
  566.         os=-msdosdjgpp
  567.         ;;
  568.     dpx20 | dpx20-*)
  569.         basic_machine=rs6000-bull
  570.         os=-bosx
  571.         ;;
  572.     dpx2* | dpx2*-bull)
  573.         basic_machine=m68k-bull
  574.         os=-sysv3
  575.         ;;
  576.     ebmon29k)
  577.         basic_machine=a29k-amd
  578.         os=-ebmon
  579.         ;;
  580.     elxsi)
  581.         basic_machine=elxsi-elxsi
  582.         os=-bsd
  583.         ;;
  584.     encore | umax | mmax)
  585.         basic_machine=ns32k-encore
  586.         ;;
  587.     es1800 | OSE68k | ose68k | ose | OSE)
  588.         basic_machine=m68k-ericsson
  589.         os=-ose
  590.         ;;
  591.     fx2800)
  592.         basic_machine=i860-alliant
  593.         ;;
  594.     genix)
  595.         basic_machine=ns32k-ns
  596.         ;;
  597.     gmicro)
  598.         basic_machine=tron-gmicro
  599.         os=-sysv
  600.         ;;
  601.     go32)
  602.         basic_machine=i386-pc
  603.         os=-go32
  604.         ;;
  605.     h3050r* | hiux*)
  606.         basic_machine=hppa1.1-hitachi
  607.         os=-hiuxwe2
  608.         ;;
  609.     h8300hms)
  610.         basic_machine=h8300-hitachi
  611.         os=-hms
  612.         ;;
  613.     h8300xray)
  614.         basic_machine=h8300-hitachi
  615.         os=-xray
  616.         ;;
  617.     h8500hms)
  618.         basic_machine=h8500-hitachi
  619.         os=-hms
  620.         ;;
  621.     harris)
  622.         basic_machine=m88k-harris
  623.         os=-sysv3
  624.         ;;
  625.     hp300-*)
  626.         basic_machine=m68k-hp
  627.         ;;
  628.     hp300bsd)
  629.         basic_machine=m68k-hp
  630.         os=-bsd
  631.         ;;
  632.     hp300hpux)
  633.         basic_machine=m68k-hp
  634.         os=-hpux
  635.         ;;
  636.     hp3k9[0-9][0-9] | hp9[0-9][0-9])
  637.         basic_machine=hppa1.0-hp
  638.         ;;
  639.     hp9k2[0-9][0-9] | hp9k31[0-9])
  640.         basic_machine=m68000-hp
  641.         ;;
  642.     hp9k3[2-9][0-9])
  643.         basic_machine=m68k-hp
  644.         ;;
  645.     hp9k6[0-9][0-9] | hp6[0-9][0-9])
  646.         basic_machine=hppa1.0-hp
  647.         ;;
  648.     hp9k7[0-79][0-9] | hp7[0-79][0-9])
  649.         basic_machine=hppa1.1-hp
  650.         ;;
  651.     hp9k78[0-9] | hp78[0-9])
  652.         # FIXME: really hppa2.0-hp
  653.         basic_machine=hppa1.1-hp
  654.         ;;
  655.     hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
  656.         # FIXME: really hppa2.0-hp
  657.         basic_machine=hppa1.1-hp
  658.         ;;
  659.     hp9k8[0-9][13679] | hp8[0-9][13679])
  660.         basic_machine=hppa1.1-hp
  661.         ;;
  662.     hp9k8[0-9][0-9] | hp8[0-9][0-9])
  663.         basic_machine=hppa1.0-hp
  664.         ;;
  665.     hppa-next)
  666.         os=-nextstep3
  667.         ;;
  668.     hppaosf)
  669.         basic_machine=hppa1.1-hp
  670.         os=-osf
  671.         ;;
  672.     hppro)
  673.         basic_machine=hppa1.1-hp
  674.         os=-proelf
  675.         ;;
  676.     i370-ibm* | ibm*)
  677.         basic_machine=i370-ibm
  678.         ;;
  679. # I'm not sure what "Sysv32" means.  Should this be sysv3.2?
  680.     i*86v32)
  681.         basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
  682.         os=-sysv32
  683.         ;;
  684.     i*86v4*)
  685.         basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
  686.         os=-sysv4
  687.         ;;
  688.     i*86v)
  689.         basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
  690.         os=-sysv
  691.         ;;
  692.     i*86sol2)
  693.         basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
  694.         os=-solaris2
  695.         ;;
  696.     i386mach)
  697.         basic_machine=i386-mach
  698.         os=-mach
  699.         ;;
  700.     i386-vsta | vsta)
  701.         basic_machine=i386-unknown
  702.         os=-vsta
  703.         ;;
  704.     iris | iris4d)
  705.         basic_machine=mips-sgi
  706.         case $os in
  707.             -irix*)
  708.             ;;
  709.             *)
  710.             os=-irix4
  711.             ;;
  712.         esac
  713.         ;;
  714.     isi68 | isi)
  715.         basic_machine=m68k-isi
  716.         os=-sysv
  717.         ;;
  718.     m68knommu)
  719.         basic_machine=m68k-unknown
  720.         os=-linux
  721.         ;;
  722.     m68knommu-*)
  723.         basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
  724.         os=-linux
  725.         ;;
  726.     m88k-omron*)
  727.         basic_machine=m88k-omron
  728.         ;;
  729.     magnum | m3230)
  730.         basic_machine=mips-mips
  731.         os=-sysv
  732.         ;;
  733.     merlin)
  734.         basic_machine=ns32k-utek
  735.         os=-sysv
  736.         ;;
  737.         microblaze)
  738.         basic_machine=microblaze-xilinx
  739.         ;;
  740.     mingw32)
  741.         basic_machine=i386-pc
  742.         os=-mingw32
  743.         ;;
  744.     mingw32ce)
  745.         basic_machine=arm-unknown
  746.         os=-mingw32ce
  747.         ;;
  748.     miniframe)
  749.         basic_machine=m68000-convergent
  750.         ;;
  751.     *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
  752.         basic_machine=m68k-atari
  753.         os=-mint
  754.         ;;
  755.     mips3*-*)
  756.         basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
  757.         ;;
  758.     mips3*)
  759.         basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
  760.         ;;
  761.     monitor)
  762.         basic_machine=m68k-rom68k
  763.         os=-coff
  764.         ;;
  765.     morphos)
  766.         basic_machine=powerpc-unknown
  767.         os=-morphos
  768.         ;;
  769.     msdos)
  770.         basic_machine=i386-pc
  771.         os=-msdos
  772.         ;;
  773.     ms1-*)
  774.         basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
  775.         ;;
  776.     mvs)
  777.         basic_machine=i370-ibm
  778.         os=-mvs
  779.         ;;
  780.     ncr3000)
  781.         basic_machine=i486-ncr
  782.         os=-sysv4
  783.         ;;
  784.     netbsd386)
  785.         basic_machine=i386-unknown
  786.         os=-netbsd
  787.         ;;
  788.     netwinder)
  789.         basic_machine=armv4l-rebel
  790.         os=-linux
  791.         ;;
  792.     news | news700 | news800 | news900)
  793.         basic_machine=m68k-sony
  794.         os=-newsos
  795.         ;;
  796.     news1000)
  797.         basic_machine=m68030-sony
  798.         os=-newsos
  799.         ;;
  800.     news-3600 | risc-news)
  801.         basic_machine=mips-sony
  802.         os=-newsos
  803.         ;;
  804.     necv70)
  805.         basic_machine=v70-nec
  806.         os=-sysv
  807.         ;;
  808.     next | m*-next )
  809.         basic_machine=m68k-next
  810.         case $os in
  811.             -nextstep* )
  812.             ;;
  813.             -ns2*)
  814.               os=-nextstep2
  815.             ;;
  816.             *)
  817.               os=-nextstep3
  818.             ;;
  819.         esac
  820.         ;;
  821.     nh3000)
  822.         basic_machine=m68k-harris
  823.         os=-cxux
  824.         ;;
  825.     nh[45]000)
  826.         basic_machine=m88k-harris
  827.         os=-cxux
  828.         ;;
  829.     nindy960)
  830.         basic_machine=i960-intel
  831.         os=-nindy
  832.         ;;
  833.     mon960)
  834.         basic_machine=i960-intel
  835.         os=-mon960
  836.         ;;
  837.     nonstopux)
  838.         basic_machine=mips-compaq
  839.         os=-nonstopux
  840.         ;;
  841.     np1)
  842.         basic_machine=np1-gould
  843.         ;;
  844.     nsr-tandem)
  845.         basic_machine=nsr-tandem
  846.         ;;
  847.     op50n-* | op60c-*)
  848.         basic_machine=hppa1.1-oki
  849.         os=-proelf
  850.         ;;
  851.     openrisc | openrisc-*)
  852.         basic_machine=or32-unknown
  853.         ;;
  854.     os400)
  855.         basic_machine=powerpc-ibm
  856.         os=-os400
  857.         ;;
  858.     OSE68000 | ose68000)
  859.         basic_machine=m68000-ericsson
  860.         os=-ose
  861.         ;;
  862.     os68k)
  863.         basic_machine=m68k-none
  864.         os=-os68k
  865.         ;;
  866.     pa-hitachi)
  867.         basic_machine=hppa1.1-hitachi
  868.         os=-hiuxwe2
  869.         ;;
  870.     paragon)
  871.         basic_machine=i860-intel
  872.         os=-osf
  873.         ;;
  874.     parisc)
  875.         basic_machine=hppa-unknown
  876.         os=-linux
  877.         ;;
  878.     parisc-*)
  879.         basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
  880.         os=-linux
  881.         ;;
  882.     pbd)
  883.         basic_machine=sparc-tti
  884.         ;;
  885.     pbb)
  886.         basic_machine=m68k-tti
  887.         ;;
  888.     pc532 | pc532-*)
  889.         basic_machine=ns32k-pc532
  890.         ;;
  891.     pc98)
  892.         basic_machine=i386-pc
  893.         ;;
  894.     pc98-*)
  895.         basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
  896.         ;;
  897.     pentium | p5 | k5 | k6 | nexgen | viac3)
  898.         basic_machine=i586-pc
  899.         ;;
  900.     pentiumpro | p6 | 6x86 | athlon | athlon_*)
  901.         basic_machine=i686-pc
  902.         ;;
  903.     pentiumii | pentium2 | pentiumiii | pentium3)
  904.         basic_machine=i686-pc
  905.         ;;
  906.     pentium4)
  907.         basic_machine=i786-pc
  908.         ;;
  909.     pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
  910.         basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
  911.         ;;
  912.     pentiumpro-* | p6-* | 6x86-* | athlon-*)
  913.         basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
  914.         ;;
  915.     pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
  916.         basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
  917.         ;;
  918.     pentium4-*)
  919.         basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
  920.         ;;
  921.     pn)
  922.         basic_machine=pn-gould
  923.         ;;
  924.     power)    basic_machine=power-ibm
  925.         ;;
  926.     ppc)    basic_machine=powerpc-unknown
  927.         ;;
  928.     ppc-*)    basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
  929.         ;;
  930.     ppcle | powerpclittle | ppc-le | powerpc-little)
  931.         basic_machine=powerpcle-unknown
  932.         ;;
  933.     ppcle-* | powerpclittle-*)
  934.         basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
  935.         ;;
  936.     ppc64)    basic_machine=powerpc64-unknown
  937.         ;;
  938.     ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
  939.         ;;
  940.     ppc64le | powerpc64little | ppc64-le | powerpc64-little)
  941.         basic_machine=powerpc64le-unknown
  942.         ;;
  943.     ppc64le-* | powerpc64little-*)
  944.         basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
  945.         ;;
  946.     ps2)
  947.         basic_machine=i386-ibm
  948.         ;;
  949.     pw32)
  950.         basic_machine=i586-unknown
  951.         os=-pw32
  952.         ;;
  953.     rdos)
  954.         basic_machine=i386-pc
  955.         os=-rdos
  956.         ;;
  957.     rom68k)
  958.         basic_machine=m68k-rom68k
  959.         os=-coff
  960.         ;;
  961.     rm[46]00)
  962.         basic_machine=mips-siemens
  963.         ;;
  964.     rtpc | rtpc-*)
  965.         basic_machine=romp-ibm
  966.         ;;
  967.     s390 | s390-*)
  968.         basic_machine=s390-ibm
  969.         ;;
  970.     s390x | s390x-*)
  971.         basic_machine=s390x-ibm
  972.         ;;
  973.     sa29200)
  974.         basic_machine=a29k-amd
  975.         os=-udi
  976.         ;;
  977.     sb1)
  978.         basic_machine=mipsisa64sb1-unknown
  979.         ;;
  980.     sb1el)
  981.         basic_machine=mipsisa64sb1el-unknown
  982.         ;;
  983.     sde)
  984.         basic_machine=mipsisa32-sde
  985.         os=-elf
  986.         ;;
  987.     sei)
  988.         basic_machine=mips-sei
  989.         os=-seiux
  990.         ;;
  991.     sequent)
  992.         basic_machine=i386-sequent
  993.         ;;
  994.     sh)
  995.         basic_machine=sh-hitachi
  996.         os=-hms
  997.         ;;
  998.     sh5el)
  999.         basic_machine=sh5le-unknown
  1000.         ;;
  1001.     sh64)
  1002.         basic_machine=sh64-unknown
  1003.         ;;
  1004.     sparclite-wrs | simso-wrs)
  1005.         basic_machine=sparclite-wrs
  1006.         os=-vxworks
  1007.         ;;
  1008.     sps7)
  1009.         basic_machine=m68k-bull
  1010.         os=-sysv2
  1011.         ;;
  1012.     spur)
  1013.         basic_machine=spur-unknown
  1014.         ;;
  1015.     st2000)
  1016.         basic_machine=m68k-tandem
  1017.         ;;
  1018.     stratus)
  1019.         basic_machine=i860-stratus
  1020.         os=-sysv4
  1021.         ;;
  1022.     sun2)
  1023.         basic_machine=m68000-sun
  1024.         ;;
  1025.     sun2os3)
  1026.         basic_machine=m68000-sun
  1027.         os=-sunos3
  1028.         ;;
  1029.     sun2os4)
  1030.         basic_machine=m68000-sun
  1031.         os=-sunos4
  1032.         ;;
  1033.     sun3os3)
  1034.         basic_machine=m68k-sun
  1035.         os=-sunos3
  1036.         ;;
  1037.     sun3os4)
  1038.         basic_machine=m68k-sun
  1039.         os=-sunos4
  1040.         ;;
  1041.     sun4os3)
  1042.         basic_machine=sparc-sun
  1043.         os=-sunos3
  1044.         ;;
  1045.     sun4os4)
  1046.         basic_machine=sparc-sun
  1047.         os=-sunos4
  1048.         ;;
  1049.     sun4sol2)
  1050.         basic_machine=sparc-sun
  1051.         os=-solaris2
  1052.         ;;
  1053.     sun3 | sun3-*)
  1054.         basic_machine=m68k-sun
  1055.         ;;
  1056.     sun4)
  1057.         basic_machine=sparc-sun
  1058.         ;;
  1059.     sun386 | sun386i | roadrunner)
  1060.         basic_machine=i386-sun
  1061.         ;;
  1062.     sv1)
  1063.         basic_machine=sv1-cray
  1064.         os=-unicos
  1065.         ;;
  1066.     symmetry)
  1067.         basic_machine=i386-sequent
  1068.         os=-dynix
  1069.         ;;
  1070.     t3e)
  1071.         basic_machine=alphaev5-cray
  1072.         os=-unicos
  1073.         ;;
  1074.     t90)
  1075.         basic_machine=t90-cray
  1076.         os=-unicos
  1077.         ;;
  1078.     tic54x | c54x*)
  1079.         basic_machine=tic54x-unknown
  1080.         os=-coff
  1081.         ;;
  1082.     tic55x | c55x*)
  1083.         basic_machine=tic55x-unknown
  1084.         os=-coff
  1085.         ;;
  1086.     tic6x | c6x*)
  1087.         basic_machine=tic6x-unknown
  1088.         os=-coff
  1089.         ;;
  1090.         # This must be matched before tile*.
  1091.         tilegx*)
  1092.         basic_machine=tilegx-unknown
  1093.         os=-linux-gnu
  1094.         ;;
  1095.     tile*)
  1096.         basic_machine=tile-unknown
  1097.         os=-linux-gnu
  1098.         ;;
  1099.     tx39)
  1100.         basic_machine=mipstx39-unknown
  1101.         ;;
  1102.     tx39el)
  1103.         basic_machine=mipstx39el-unknown
  1104.         ;;
  1105.     toad1)
  1106.         basic_machine=pdp10-xkl
  1107.         os=-tops20
  1108.         ;;
  1109.     tower | tower-32)
  1110.         basic_machine=m68k-ncr
  1111.         ;;
  1112.     tpf)
  1113.         basic_machine=s390x-ibm
  1114.         os=-tpf
  1115.         ;;
  1116.     udi29k)
  1117.         basic_machine=a29k-amd
  1118.         os=-udi
  1119.         ;;
  1120.     ultra3)
  1121.         basic_machine=a29k-nyu
  1122.         os=-sym1
  1123.         ;;
  1124.     v810 | necv810)
  1125.         basic_machine=v810-nec
  1126.         os=-none
  1127.         ;;
  1128.     vaxv)
  1129.         basic_machine=vax-dec
  1130.         os=-sysv
  1131.         ;;
  1132.     vms)
  1133.         basic_machine=vax-dec
  1134.         os=-vms
  1135.         ;;
  1136.     vpp*|vx|vx-*)
  1137.         basic_machine=f301-fujitsu
  1138.         ;;
  1139.     vxworks960)
  1140.         basic_machine=i960-wrs
  1141.         os=-vxworks
  1142.         ;;
  1143.     vxworks68)
  1144.         basic_machine=m68k-wrs
  1145.         os=-vxworks
  1146.         ;;
  1147.     vxworks29k)
  1148.         basic_machine=a29k-wrs
  1149.         os=-vxworks
  1150.         ;;
  1151.     w65*)
  1152.         basic_machine=w65-wdc
  1153.         os=-none
  1154.         ;;
  1155.     w89k-*)
  1156.         basic_machine=hppa1.1-winbond
  1157.         os=-proelf
  1158.         ;;
  1159.     xbox)
  1160.         basic_machine=i686-pc
  1161.         os=-mingw32
  1162.         ;;
  1163.     xps | xps100)
  1164.         basic_machine=xps100-honeywell
  1165.         ;;
  1166.     ymp)
  1167.         basic_machine=ymp-cray
  1168.         os=-unicos
  1169.         ;;
  1170.     z8k-*-coff)
  1171.         basic_machine=z8k-unknown
  1172.         os=-sim
  1173.         ;;
  1174.     z80-*-coff)
  1175.         basic_machine=z80-unknown
  1176.         os=-sim
  1177.         ;;
  1178.     none)
  1179.         basic_machine=none-none
  1180.         os=-none
  1181.         ;;
  1182.  
  1183. # Here we handle the default manufacturer of certain CPU types.  It is in
  1184. # some cases the only manufacturer, in others, it is the most popular.
  1185.     w89k)
  1186.         basic_machine=hppa1.1-winbond
  1187.         ;;
  1188.     op50n)
  1189.         basic_machine=hppa1.1-oki
  1190.         ;;
  1191.     op60c)
  1192.         basic_machine=hppa1.1-oki
  1193.         ;;
  1194.     romp)
  1195.         basic_machine=romp-ibm
  1196.         ;;
  1197.     mmix)
  1198.         basic_machine=mmix-knuth
  1199.         ;;
  1200.     rs6000)
  1201.         basic_machine=rs6000-ibm
  1202.         ;;
  1203.     vax)
  1204.         basic_machine=vax-dec
  1205.         ;;
  1206.     pdp10)
  1207.         # there are many clones, so DEC is not a safe bet
  1208.         basic_machine=pdp10-unknown
  1209.         ;;
  1210.     pdp11)
  1211.         basic_machine=pdp11-dec
  1212.         ;;
  1213.     we32k)
  1214.         basic_machine=we32k-att
  1215.         ;;
  1216.     sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
  1217.         basic_machine=sh-unknown
  1218.         ;;
  1219.     sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
  1220.         basic_machine=sparc-sun
  1221.         ;;
  1222.     cydra)
  1223.         basic_machine=cydra-cydrome
  1224.         ;;
  1225.     orion)
  1226.         basic_machine=orion-highlevel
  1227.         ;;
  1228.     orion105)
  1229.         basic_machine=clipper-highlevel
  1230.         ;;
  1231.     mac | mpw | mac-mpw)
  1232.         basic_machine=m68k-apple
  1233.         ;;
  1234.     pmac | pmac-mpw)
  1235.         basic_machine=powerpc-apple
  1236.         ;;
  1237.     *-unknown)
  1238.         # Make sure to match an already-canonicalized machine name.
  1239.         ;;
  1240.     *)
  1241.         echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
  1242.         exit 1
  1243.         ;;
  1244. esac
  1245.  
  1246. # Here we canonicalize certain aliases for manufacturers.
  1247. case $basic_machine in
  1248.     *-digital*)
  1249.         basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
  1250.         ;;
  1251.     *-commodore*)
  1252.         basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
  1253.         ;;
  1254.     *)
  1255.         ;;
  1256. esac
  1257.  
  1258. # Decode manufacturer-specific aliases for certain operating systems.
  1259.  
  1260. if [ x"$os" != x"" ]
  1261. then
  1262. case $os in
  1263.         # First match some system type aliases
  1264.         # that might get confused with valid system types.
  1265.     # -solaris* is a basic system type, with this one exception.
  1266.         -auroraux)
  1267.             os=-auroraux
  1268.         ;;
  1269.     -solaris1 | -solaris1.*)
  1270.         os=`echo $os | sed -e 's|solaris1|sunos4|'`
  1271.         ;;
  1272.     -solaris)
  1273.         os=-solaris2
  1274.         ;;
  1275.     -svr4*)
  1276.         os=-sysv4
  1277.         ;;
  1278.     -unixware*)
  1279.         os=-sysv4.2uw
  1280.         ;;
  1281.     -gnu/linux*)
  1282.         os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
  1283.         ;;
  1284.     # First accept the basic system types.
  1285.     # The portable systems comes first.
  1286.     # Each alternative MUST END IN A *, to match a version number.
  1287.     # -sysv* is not here because it comes later, after sysvr4.
  1288.     -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
  1289.           | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
  1290.           | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
  1291.           | -sym* | -kopensolaris* \
  1292.           | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
  1293.           | -aos* | -aros* \
  1294.           | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
  1295.           | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
  1296.           | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
  1297.           | -openbsd* | -solidbsd* \
  1298.           | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
  1299.           | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
  1300.           | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
  1301.           | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
  1302.           | -chorusos* | -chorusrdb* | -cegcc* \
  1303.           | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
  1304.           | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
  1305.           | -uxpv* | -beos* | -mpeix* | -udk* \
  1306.           | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
  1307.           | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
  1308.           | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
  1309.           | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
  1310.           | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
  1311.           | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
  1312.           | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
  1313.     # Remember, each alternative MUST END IN *, to match a version number.
  1314.         ;;
  1315.     -qnx*)
  1316.         case $basic_machine in
  1317.             x86-* | i*86-*)
  1318.             ;;
  1319.             *)
  1320.             os=-nto$os
  1321.             ;;
  1322.         esac
  1323.         ;;
  1324.     -nto-qnx*)
  1325.         ;;
  1326.     -nto*)
  1327.         os=`echo $os | sed -e 's|nto|nto-qnx|'`
  1328.         ;;
  1329.     -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
  1330.           | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
  1331.           | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
  1332.         ;;
  1333.     -mac*)
  1334.         os=`echo $os | sed -e 's|mac|macos|'`
  1335.         ;;
  1336.     -linux-dietlibc)
  1337.         os=-linux-dietlibc
  1338.         ;;
  1339.     -linux*)
  1340.         os=`echo $os | sed -e 's|linux|linux-gnu|'`
  1341.         ;;
  1342.     -sunos5*)
  1343.         os=`echo $os | sed -e 's|sunos5|solaris2|'`
  1344.         ;;
  1345.     -sunos6*)
  1346.         os=`echo $os | sed -e 's|sunos6|solaris3|'`
  1347.         ;;
  1348.     -opened*)
  1349.         os=-openedition
  1350.         ;;
  1351.         -os400*)
  1352.         os=-os400
  1353.         ;;
  1354.     -wince*)
  1355.         os=-wince
  1356.         ;;
  1357.     -osfrose*)
  1358.         os=-osfrose
  1359.         ;;
  1360.     -osf*)
  1361.         os=-osf
  1362.         ;;
  1363.     -utek*)
  1364.         os=-bsd
  1365.         ;;
  1366.     -dynix*)
  1367.         os=-bsd
  1368.         ;;
  1369.     -acis*)
  1370.         os=-aos
  1371.         ;;
  1372.     -atheos*)
  1373.         os=-atheos
  1374.         ;;
  1375.     -syllable*)
  1376.         os=-syllable
  1377.         ;;
  1378.     -386bsd)
  1379.         os=-bsd
  1380.         ;;
  1381.     -ctix* | -uts*)
  1382.         os=-sysv
  1383.         ;;
  1384.     -nova*)
  1385.         os=-rtmk-nova
  1386.         ;;
  1387.     -ns2 )
  1388.         os=-nextstep2
  1389.         ;;
  1390.     -nsk*)
  1391.         os=-nsk
  1392.         ;;
  1393.     # Preserve the version number of sinix5.
  1394.     -sinix5.*)
  1395.         os=`echo $os | sed -e 's|sinix|sysv|'`
  1396.         ;;
  1397.     -sinix*)
  1398.         os=-sysv4
  1399.         ;;
  1400.         -tpf*)
  1401.         os=-tpf
  1402.         ;;
  1403.     -triton*)
  1404.         os=-sysv3
  1405.         ;;
  1406.     -oss*)
  1407.         os=-sysv3
  1408.         ;;
  1409.     -svr4)
  1410.         os=-sysv4
  1411.         ;;
  1412.     -svr3)
  1413.         os=-sysv3
  1414.         ;;
  1415.     -sysvr4)
  1416.         os=-sysv4
  1417.         ;;
  1418.     # This must come after -sysvr4.
  1419.     -sysv*)
  1420.         ;;
  1421.     -ose*)
  1422.         os=-ose
  1423.         ;;
  1424.     -es1800*)
  1425.         os=-ose
  1426.         ;;
  1427.     -xenix)
  1428.         os=-xenix
  1429.         ;;
  1430.     -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
  1431.         os=-mint
  1432.         ;;
  1433.     -aros*)
  1434.         os=-aros
  1435.         ;;
  1436.     -kaos*)
  1437.         os=-kaos
  1438.         ;;
  1439.     -zvmoe)
  1440.         os=-zvmoe
  1441.         ;;
  1442.     -dicos*)
  1443.         os=-dicos
  1444.         ;;
  1445.         -nacl*)
  1446.             ;;
  1447.     -none)
  1448.         ;;
  1449.     *)
  1450.         # Get rid of the `-' at the beginning of $os.
  1451.         os=`echo $os | sed 's/[^-]*-//'`
  1452.         echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
  1453.         exit 1
  1454.         ;;
  1455. esac
  1456. else
  1457.  
  1458. # Here we handle the default operating systems that come with various machines.
  1459. # The value should be what the vendor currently ships out the door with their
  1460. # machine or put another way, the most popular os provided with the machine.
  1461.  
  1462. # Note that if you're going to try to match "-MANUFACTURER" here (say,
  1463. # "-sun"), then you have to tell the case statement up towards the top
  1464. # that MANUFACTURER isn't an operating system.  Otherwise, code above
  1465. # will signal an error saying that MANUFACTURER isn't an operating
  1466. # system, and we'll never get to this point.
  1467.  
  1468. case $basic_machine in
  1469.         score-*)
  1470.         os=-elf
  1471.         ;;
  1472.         spu-*)
  1473.         os=-elf
  1474.         ;;
  1475.     *-acorn)
  1476.         os=-riscix1.2
  1477.         ;;
  1478.     arm*-rebel)
  1479.         os=-linux
  1480.         ;;
  1481.     arm*-semi)
  1482.         os=-aout
  1483.         ;;
  1484.         c4x-* | tic4x-*)
  1485.             os=-coff
  1486.         ;;
  1487.     # This must come before the *-dec entry.
  1488.     pdp10-*)
  1489.         os=-tops20
  1490.         ;;
  1491.     pdp11-*)
  1492.         os=-none
  1493.         ;;
  1494.     *-dec | vax-*)
  1495.         os=-ultrix4.2
  1496.         ;;
  1497.     m68*-apollo)
  1498.         os=-domain
  1499.         ;;
  1500.     i386-sun)
  1501.         os=-sunos4.0.2
  1502.         ;;
  1503.     m68000-sun)
  1504.         os=-sunos3
  1505.         # This also exists in the configure program, but was not the
  1506.         # default.
  1507.         # os=-sunos4
  1508.         ;;
  1509.     m68*-cisco)
  1510.         os=-aout
  1511.         ;;
  1512.         mep-*)
  1513.         os=-elf
  1514.         ;;
  1515.     mips*-cisco)
  1516.         os=-elf
  1517.         ;;
  1518.     mips*-*)
  1519.         os=-elf
  1520.         ;;
  1521.     or32-*)
  1522.         os=-coff
  1523.         ;;
  1524.     *-tti)    # must be before sparc entry or we get the wrong os.
  1525.         os=-sysv3
  1526.         ;;
  1527.     sparc-* | *-sun)
  1528.         os=-sunos4.1.1
  1529.         ;;
  1530.     *-be)
  1531.         os=-beos
  1532.         ;;
  1533.     *-haiku)
  1534.         os=-haiku
  1535.         ;;
  1536.     *-ibm)
  1537.         os=-aix
  1538.         ;;
  1539.         *-knuth)
  1540.         os=-mmixware
  1541.         ;;
  1542.     *-wec)
  1543.         os=-proelf
  1544.         ;;
  1545.     *-winbond)
  1546.         os=-proelf
  1547.         ;;
  1548.     *-oki)
  1549.         os=-proelf
  1550.         ;;
  1551.     *-hp)
  1552.         os=-hpux
  1553.         ;;
  1554.     *-hitachi)
  1555.         os=-hiux
  1556.         ;;
  1557.     i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
  1558.         os=-sysv
  1559.         ;;
  1560.     *-cbm)
  1561.         os=-amigaos
  1562.         ;;
  1563.     *-dg)
  1564.         os=-dgux
  1565.         ;;
  1566.     *-dolphin)
  1567.         os=-sysv3
  1568.         ;;
  1569.     m68k-ccur)
  1570.         os=-rtu
  1571.         ;;
  1572.     m88k-omron*)
  1573.         os=-luna
  1574.         ;;
  1575.     *-next )
  1576.         os=-nextstep
  1577.         ;;
  1578.     *-sequent)
  1579.         os=-ptx
  1580.         ;;
  1581.     *-crds)
  1582.         os=-unos
  1583.         ;;
  1584.     *-ns)
  1585.         os=-genix
  1586.         ;;
  1587.     i370-*)
  1588.         os=-mvs
  1589.         ;;
  1590.     *-next)
  1591.         os=-nextstep3
  1592.         ;;
  1593.     *-gould)
  1594.         os=-sysv
  1595.         ;;
  1596.     *-highlevel)
  1597.         os=-bsd
  1598.         ;;
  1599.     *-encore)
  1600.         os=-bsd
  1601.         ;;
  1602.     *-sgi)
  1603.         os=-irix
  1604.         ;;
  1605.     *-siemens)
  1606.         os=-sysv4
  1607.         ;;
  1608.     *-masscomp)
  1609.         os=-rtu
  1610.         ;;
  1611.     f30[01]-fujitsu | f700-fujitsu)
  1612.         os=-uxpv
  1613.         ;;
  1614.     *-rom68k)
  1615.         os=-coff
  1616.         ;;
  1617.     *-*bug)
  1618.         os=-coff
  1619.         ;;
  1620.     *-apple)
  1621.         os=-macos
  1622.         ;;
  1623.     *-atari*)
  1624.         os=-mint
  1625.         ;;
  1626.     *)
  1627.         os=-none
  1628.         ;;
  1629. esac
  1630. fi
  1631.  
  1632. # Here we handle the case where we know the os, and the CPU type, but not the
  1633. # manufacturer.  We pick the logical manufacturer.
  1634. vendor=unknown
  1635. case $basic_machine in
  1636.     *-unknown)
  1637.         case $os in
  1638.             -riscix*)
  1639.                 vendor=acorn
  1640.                 ;;
  1641.             -sunos*)
  1642.                 vendor=sun
  1643.                 ;;
  1644.             -cnk*|-aix*)
  1645.                 vendor=ibm
  1646.                 ;;
  1647.             -beos*)
  1648.                 vendor=be
  1649.                 ;;
  1650.             -hpux*)
  1651.                 vendor=hp
  1652.                 ;;
  1653.             -mpeix*)
  1654.                 vendor=hp
  1655.                 ;;
  1656.             -hiux*)
  1657.                 vendor=hitachi
  1658.                 ;;
  1659.             -unos*)
  1660.                 vendor=crds
  1661.                 ;;
  1662.             -dgux*)
  1663.                 vendor=dg
  1664.                 ;;
  1665.             -luna*)
  1666.                 vendor=omron
  1667.                 ;;
  1668.             -genix*)
  1669.                 vendor=ns
  1670.                 ;;
  1671.             -mvs* | -opened*)
  1672.                 vendor=ibm
  1673.                 ;;
  1674.             -os400*)
  1675.                 vendor=ibm
  1676.                 ;;
  1677.             -ptx*)
  1678.                 vendor=sequent
  1679.                 ;;
  1680.             -tpf*)
  1681.                 vendor=ibm
  1682.                 ;;
  1683.             -vxsim* | -vxworks* | -windiss*)
  1684.                 vendor=wrs
  1685.                 ;;
  1686.             -aux*)
  1687.                 vendor=apple
  1688.                 ;;
  1689.             -hms*)
  1690.                 vendor=hitachi
  1691.                 ;;
  1692.             -mpw* | -macos*)
  1693.                 vendor=apple
  1694.                 ;;
  1695.             -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
  1696.                 vendor=atari
  1697.                 ;;
  1698.             -vos*)
  1699.                 vendor=stratus
  1700.                 ;;
  1701.         esac
  1702.         basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
  1703.         ;;
  1704. esac
  1705.  
  1706. echo $basic_machine$os
  1707. exit
  1708.  
  1709. # Local variables:
  1710. # eval: (add-hook 'write-file-hooks 'time-stamp)
  1711. # time-stamp-start: "timestamp='"
  1712. # time-stamp-format: "%:y-%02m-%02d"
  1713. # time-stamp-end: "'"
  1714. # End:
  1715.